var FormDangKyVay = function () {
	//function to initiate Select2
    var runSelect2 = function () {
        $(".search-select").select2({
            placeholder: "Select a State",
            allowClear: true
        });
    };
  //function to initiate bootstrap-datepicker
    var runDatePicker = function () {
        $('.date-picker').datepicker({
            autoclose: true
        });
    };
    
	var runValidator1 = function () {
        var form1 = $('#frmDangKyVay');
        var errorHandler1 = $('.errorHandler', form1);
        
        $('#frmDangKyVay').validate({
            errorElement: "span", // contain the error msg in a span tag
            errorClass: 'help-block',
            errorPlacement: function (error, element) { // render error placement for each input type
                error.insertAfter(element);
            },
            ignore: "",
            rules: {
            	ho_ten: {
                    required: true
                },
                gioi_tinh: {
                    required: true
                },
                ngay_sinh: {
                    required: true
                },
                email: {
                    required: true,
                    email: true
                },
                dien_thoai: {
                    required: true
                },
                cmnd: {
                    required: true
                },
                dien_thoai: {
                    required: true
                },
                dia_chi: {
                    required: true
                },
                id_tinh_thanh: {
                    required: true
                },
                id_quan_huyen: {
                    required: true
                }
            },
            messages: {
            	ho_ten: "Bạn vui lòng nhập vào Họ và Tên",
            	ngay_sinh: "Bạn vui lòng nhập vào Ngày sinh",
            	email: {
                    required: "Bạn vui lòng nhập vào địa chỉ email liên hệ.",
                    email: "Email phải có định dạng như sau: name@domain.com"
                },
                dien_thoai: "Bạn vui lòng nhập vào số điện thoại",
            },
            invalidHandler: function (event, validator) { //display error alert on form submit
                errorHandler1.show();
            },
            highlight: function (element) {
                $(element).closest('.help-block').removeClass('valid');
                // display OK icon
                $(element).closest('.form-group').removeClass('has-success').addClass('has-error').find('.symbol').removeClass('ok').addClass('required');
                // add the Bootstrap error class to the control group
            },
            unhighlight: function (element) { // revert the change done by hightlight
                $(element).closest('.form-group').removeClass('has-error');
                // set error class to the control group
            },
            success: function (label, element) {
                label.addClass('help-block valid');
                // mark the current input as valid and display OK icon
                $(element).closest('.form-group').removeClass('has-error').addClass('has-success').find('.symbol').removeClass('required').addClass('ok');
            }
        });
    };
    return {
        //main function to initiate template pages
        init: function () {
        	runSelect2();
            runDatePicker();
            runValidator1();
        }
    };
}();
$(document).ready(function() {
		
	FormDangKyVay.init();
		
});
